package com.eshop.gen.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

@TableName("gen_config")
public class GenConfig
{
    @TableId
    private Long id;
    private String tableName;
    private String apiAlias;
    private String pack;
    private String moduleName;
    private String path;
    private String apiPath;
    private String author;
    private String prefix;
    private Boolean cover;
    
    public GenConfig(final String tableName) {
        this.cover = false;
        this.moduleName = "eshop-mall";
        this.author = "zhonghui";
        this.pack = "com.eshop.modules";
        this.tableName = tableName;
    }
    
    public Long getId() {
        return this.id;
    }
    
    public String getTableName() {
        return this.tableName;
    }
    
    public String getApiAlias() {
        return this.apiAlias;
    }
    
    public String getPack() {
        return this.pack;
    }
    
    public String getModuleName() {
        return this.moduleName;
    }
    
    public String getPath() {
        return this.path;
    }
    
    public String getApiPath() {
        return this.apiPath;
    }
    
    public String getAuthor() {
        return this.author;
    }
    
    public String getPrefix() {
        return this.prefix;
    }
    
    public Boolean getCover() {
        return this.cover;
    }
    
    public void setId(final Long id) {
        this.id = id;
    }
    
    public void setTableName(final String tableName) {
        this.tableName = tableName;
    }
    
    public void setApiAlias(final String apiAlias) {
        this.apiAlias = apiAlias;
    }
    
    public void setPack(final String pack) {
        this.pack = pack;
    }
    
    public void setModuleName(final String moduleName) {
        this.moduleName = moduleName;
    }
    
    public void setPath(final String path) {
        this.path = path;
    }
    
    public void setApiPath(final String apiPath) {
        this.apiPath = apiPath;
    }
    
    public void setAuthor(final String author) {
        this.author = author;
    }
    
    public void setPrefix(final String prefix) {
        this.prefix = prefix;
    }
    
    public void setCover(final Boolean cover) {
        this.cover = cover;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof GenConfig)) {
            return false;
        }
        final GenConfig other = (GenConfig)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$id = this.getId();
        final Object other$id = other.getId();
        Label_0065: {
            if (this$id == null) {
                if (other$id == null) {
                    break Label_0065;
                }
            }
            else if (this$id.equals(other$id)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$cover = this.getCover();
        final Object other$cover = other.getCover();
        Label_0102: {
            if (this$cover == null) {
                if (other$cover == null) {
                    break Label_0102;
                }
            }
            else if (this$cover.equals(other$cover)) {
                break Label_0102;
            }
            return false;
        }
        final Object this$tableName = this.getTableName();
        final Object other$tableName = other.getTableName();
        Label_0139: {
            if (this$tableName == null) {
                if (other$tableName == null) {
                    break Label_0139;
                }
            }
            else if (this$tableName.equals(other$tableName)) {
                break Label_0139;
            }
            return false;
        }
        final Object this$apiAlias = this.getApiAlias();
        final Object other$apiAlias = other.getApiAlias();
        Label_0176: {
            if (this$apiAlias == null) {
                if (other$apiAlias == null) {
                    break Label_0176;
                }
            }
            else if (this$apiAlias.equals(other$apiAlias)) {
                break Label_0176;
            }
            return false;
        }
        final Object this$pack = this.getPack();
        final Object other$pack = other.getPack();
        Label_0213: {
            if (this$pack == null) {
                if (other$pack == null) {
                    break Label_0213;
                }
            }
            else if (this$pack.equals(other$pack)) {
                break Label_0213;
            }
            return false;
        }
        final Object this$moduleName = this.getModuleName();
        final Object other$moduleName = other.getModuleName();
        Label_0250: {
            if (this$moduleName == null) {
                if (other$moduleName == null) {
                    break Label_0250;
                }
            }
            else if (this$moduleName.equals(other$moduleName)) {
                break Label_0250;
            }
            return false;
        }
        final Object this$path = this.getPath();
        final Object other$path = other.getPath();
        Label_0287: {
            if (this$path == null) {
                if (other$path == null) {
                    break Label_0287;
                }
            }
            else if (this$path.equals(other$path)) {
                break Label_0287;
            }
            return false;
        }
        final Object this$apiPath = this.getApiPath();
        final Object other$apiPath = other.getApiPath();
        Label_0324: {
            if (this$apiPath == null) {
                if (other$apiPath == null) {
                    break Label_0324;
                }
            }
            else if (this$apiPath.equals(other$apiPath)) {
                break Label_0324;
            }
            return false;
        }
        final Object this$author = this.getAuthor();
        final Object other$author = other.getAuthor();
        Label_0361: {
            if (this$author == null) {
                if (other$author == null) {
                    break Label_0361;
                }
            }
            else if (this$author.equals(other$author)) {
                break Label_0361;
            }
            return false;
        }
        final Object this$prefix = this.getPrefix();
        final Object other$prefix = other.getPrefix();
        if (this$prefix == null) {
            if (other$prefix == null) {
                return true;
            }
        }
        else if (this$prefix.equals(other$prefix)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof GenConfig;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $id = this.getId();
        result = result * 59 + (($id == null) ? 43 : $id.hashCode());
        final Object $cover = this.getCover();
        result = result * 59 + (($cover == null) ? 43 : $cover.hashCode());
        final Object $tableName = this.getTableName();
        result = result * 59 + (($tableName == null) ? 43 : $tableName.hashCode());
        final Object $apiAlias = this.getApiAlias();
        result = result * 59 + (($apiAlias == null) ? 43 : $apiAlias.hashCode());
        final Object $pack = this.getPack();
        result = result * 59 + (($pack == null) ? 43 : $pack.hashCode());
        final Object $moduleName = this.getModuleName();
        result = result * 59 + (($moduleName == null) ? 43 : $moduleName.hashCode());
        final Object $path = this.getPath();
        result = result * 59 + (($path == null) ? 43 : $path.hashCode());
        final Object $apiPath = this.getApiPath();
        result = result * 59 + (($apiPath == null) ? 43 : $apiPath.hashCode());
        final Object $author = this.getAuthor();
        result = result * 59 + (($author == null) ? 43 : $author.hashCode());
        final Object $prefix = this.getPrefix();
        result = result * 59 + (($prefix == null) ? 43 : $prefix.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "GenConfig(id=" + this.getId() + ", tableName=" + this.getTableName() + ", apiAlias=" + this.getApiAlias() + ", pack=" + this.getPack() + ", moduleName=" + this.getModuleName() + ", path=" + this.getPath() + ", apiPath=" + this.getApiPath() + ", author=" + this.getAuthor() + ", prefix=" + this.getPrefix() + ", cover=" + this.getCover() + ")";
    }
    
    public GenConfig() {
    }
}
